home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 7
/
Amiga Format AFCD07 (Dec 1996, Issue 91).iso
/
serious
/
shareware
/
programming
/
aros
/
exec
/
addhead.c
< prev
next >
Wrap
C/C++ Source or Header
|
1996-09-12
|
2KB
|
84 lines
/*
(C) 1995-96 AROS - The Amiga Replacement OS
$Id: addhead.c,v 1.5 1996/08/13 13:55:55 digulla Exp $
$Log: addhead.c,v $
Revision 1.5 1996/08/13 13:55:55 digulla
Replaced __AROS_LA by __AROS_LHA
Replaced some __AROS_LH*I by __AROS_LH*
Sorted and added includes
Revision 1.4 1996/08/01 17:41:01 digulla
Added standard header for all files
Desc:
Lang: english
*/
#include "exec_intern.h"
/*****************************************************************************
NAME */
#include <exec/lists.h>
#include <clib/exec_protos.h>
__AROS_LH2I(void, AddHead,
/* SYNOPSIS */
__AROS_LHA(struct List *, list, A0),
__AROS_LHA(struct Node *, node, A1),
/* LOCATION */
struct SysBase *, SysBase, 40, Exec)
/* FUNCTION
Insert Node node as the first node of the list.
INPUTS
list - The list to insert the node into
node - This node is to be inserted
RESULT
NOTES
EXAMPLE
struct List * list;
struct Node * pred;
// Insert Node at top
AddHead (list, node);
BUGS
SEE ALSO
INTERNALS
HISTORY
26-08-95 digulla created after EXEC-Routine
26-10-95 digulla adjusted to new calling scheme
******************************************************************************/
{
__AROS_FUNC_INIT
assert (node);
assert (list);
/*
Make the node point to the old first node in the list and to the
head of the list.
*/
node->ln_Succ = list->lh_Head;
node->ln_Pred = (struct Node *)&list->lh_Head;
/*
New we come before the old first node which must now point to us
and the same applies to the pointer to-the-first-node in the
head of the list.
*/
list->lh_Head->ln_Pred = node;
list->lh_Head = node;
__AROS_FUNC_EXIT
} /* AddHead */